A portion of the disclosure of this patent document contains material to which a claim for copyright is made. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure, as it appears in the Patent and Trademark Office patent file or records, but reserves all other copyright rights whatsoever.
Not applicable.
A portion of the disclosure hereof is embodied within a Microfiche Appendix comprising a total of three (3) microfiche sheets having a total of one hundred forty-five (145) frames.
This invention relates, generally, to computer implemented document and image management systems; and, more particularly, to such a system that operates under the Microsoft Windows(copyright)1 shell environment and which, further, is cross-platform capable and application independent. With respect to the document or image sought to be managed, the invention, thus, operates independently of both the computer platform and the application software therein operating that was used to create the document or image.
1 Windows(copyright) is a registered trademark of the Microsoft Corporation, Redmond, Wash. 
A computer implemented document and image management system (hereinafter sometimes, xe2x80x9cDIM systemxe2x80x9d) aids in managing information created by a user""s legacy software application or applications, further empowering the legacy application by the process of xe2x80x9cimage enabling.xe2x80x9d The terms xe2x80x9clegacy software,xe2x80x9d xe2x80x9clegacy application,xe2x80x9d xe2x80x9capplication,xe2x80x9d and xe2x80x9capplication software,xe2x80x9d as used herein, connotes software running either on a single computer device, or, alternatively, over a network of interconnected computers, that utilizes one or more database(s) to collect and store, on computer media, data that has been provided by the user thereof through operation of a computer and its software.
The legacy software often provides the user with an efficient interface for collecting and processing the user""s data. Examples of such data might be image or graphic-based data; spreadsheet data; textual data; data acquired through a process of data acquisition (as in a manufacturing process or medical procedure), the representation of which approximates or models a physical manifestation, composition, process, or the like; or any combination(s) thereof. Many different legacy applications may operate, and inter-operate, on the user""s computer and/or network.
In most cases, such information is merely created and stored by such legacy software, but is not managed thereby. The purpose, then, of a document and image management system is to provide the user with a way to collect, process, image, and manage all such information as may have been created by the legacy applications, but which the legacy applications do not otherwise manage, or do not otherwise manage with sufficient functionality to meet the computer user""s needs.
For example, a user may wish to process, store, and manage information created by various individual and independent software into a common form. Such functionality is not typically provided by the legacy application. The user""s desire for such control and management of data, then, defines the parameters for development of a DIM system.
The user may wish to use DIM system functionality through his legacy business application interface. In this regard, the DIM system must somehow be integrated into the user""s legacy application(s). Because the legacy application(s) may run on any computer platform, integration of the features discussed above becomes very complicated.
The problem identified has been further compounded by the increasing and now widespread use of networks of computers, wherein it is common that individual computers in the network comprise varying hardware, operating system, and legacy application architectures. Such architectures, which are generally referred to herein as xe2x80x9cplatforms,xe2x80x9d often require that data be processed, stored, and managed in formats that may not be compatible with formats required by another platform operating in a remote, but interconnected, portion of the computer network.
An effective DIM system, then, should be capable of processing and managing all such data, regardless of the type of data, the legacy application that created the data, or the platform under which the data was created. Prior DIM systems have sought to perform such integration according to three primary models.
The first model is integration of data through software directed xe2x80x9ccalls,xe2x80x9d or redirection of the legacy application""s programming logic and resulting data flow, to and through an application programming interface, or xe2x80x9cAPI.xe2x80x9d In such model, the computer programmer places API calls within the user""s legacy application requiring DIM system functionality, so that when the legacy application executes to the point of call, the DIM system function will be loaded and executed.
Such programming model is undesirable, however, because the programmer must analyze each of the user""s legacy applications requiring DIM system functionality, and understand such application(s) well enough to implement API calls in the correct logical sequence. This implementation must be performed for each legacy application. Such programming is time consuming, and, thereby, expensive. Program support is difficult to maintain because, should an application programming change occur that changes or affects the position of a character in a DIM required field, the API no longer accomplishes an accurate index transfer; thus, a further programming change is required to return functionality to the DIM system. This method is not platform independent and, typically, is not guaranteed to work for all of the user""s legacy applications.
The second model is integration of data through a process that often is called xe2x80x9cscreen-scraping.xe2x80x9d According to this model, screen-scraping software is provided td monitor the user""s keystrokes effectuated upon the computer. Typically, a xe2x80x9chot-keyxe2x80x9d combination is programmed to activate the screen-scraping software. When the user presses the xe2x80x9chot-keyxe2x80x9d combination, the screen-scraping software identifies a display location for the information, as upon the computer""s monitor or the like, according to a display matrix calculation. The screen-scraping software provides index data that is, in turn, passed to the DIM system.
According to the typical implementation of this model, however, the screen scraping software operates only on a xe2x80x9chost-and-clientxe2x80x9d based platform, as in a network-based host machine according to the AS/400 architecture, or the like. The screen-scraping software, then, operates upon the AS/400 platform wherein the legacy application is running. This is disadvantageous in that the screen-scraping application, generally, is activated from the client machine. This implementation, therefore, usually is slow because the host computer must process the data, often while the client computer is forced to stand idle, and then send the result back to the client computer. This model is further disadvantageous because it is not, typically, guaranteed to work for all applications, and does not function within a xe2x80x9cserver-and-clientxe2x80x9d based architecture. Additionally, should the user change platforms or operating systems, the ability to xe2x80x9cscreen-scrapexe2x80x9d is lost, along with the programming investment incurred.
The third model is integration of data through dynamic data exchange (xe2x80x9cDDExe2x80x9d) or object linking and embedding xe2x80x9cOLExe2x80x9d automation; i.e., the exchange of information between software applications that have been programmed according to uniform and common data exchange protocols, typically in the Microsoft Windows(copyright) environment. In accordance with this model, only those applications supporting DDE or OLE may be enabled to provide DIM system functionality. This model does not work on all platforms. Even where the model is effective, programming changes often are required on both host/server and client applications.
It, thus, is readily apparent that an improved DIM system is desirable to overcome the deficiencies hereinabove recognized. Such a DIM system should be easily implemented in the programming and configuration of the computer. It should be platform independent. It should work on both xe2x80x9chost-and-clientxe2x80x9d and xe2x80x9cserver-and-clientxe2x80x9d systems. It should not require alteration of the computer hardware, nor should it require programming modifications to any legacy applications or operating system software. It is, therefore, to the provision of such an improved DIM system that the present invention is directed.
Accordingly, the several objects of the present invention are:
to provide an improved DIM system that is easily implemented in the programming and configuration of a computer;
to provide an improved DIM system that is platform independent;
to provide an improved DIM system that works effectively on both xe2x80x9chost-and-clientxe2x80x9d and xe2x80x9cserver-and-clientxe2x80x9d systems;
to provide an improved DIM system that does not require alteration of the computer hardware; and,
to provide an improved DIM system that does not require programming modifications to any legacy applications or operating system software.
Other objects, features, and advantages of the present invention will become apparent to those skilled in the art by reference to the several Figures, the included Microfiche Appendix of representative source code listing, and to the Detailed Description of the Invention presented hereinbelow.
In accordance with the several objects of the invention, presented is an improved computer implemented document and image management system that integrates and manages all such information as may have been created by the user""s legacy applications, but which the legacy applications do not otherwise manage, or do not otherwise manage with. sufficient functionality to meet the computer user""s needs. The improved computer implemented DIM system of the present invention operates one or more automatic index field capture(s) (xe2x80x9cIFCxe2x80x9d), performed according to software programming implemented within a computer preferably functioning according to the Microsoft Windows(copyright) operating system.
The present invention comprises a method and programming within and upon a computer. The programming method of the present invention obtains the indices needed. to create, or index, an image from the application running on the Windows(copyright) desktop; and, thereafter, electronically files the image. The programming method of the present invention image-enables the entire Windows(copyright) desktop, so that all applications running in windows thereunder are provided with integrated DIM system functionality.
The present invention operates by providing programming that targets a data stream that is refreshing the graphical user interface (xe2x80x9cGUIxe2x80x9d) of a screen running on the Windows(copyright) desktop. The program continuously samples the pixels that are utilized to create the image of an application field. The sampling function enables the program to transfer data to the imaging database for subsequent use in filing, searching, and indexing the data so provided. This functionality may subsequently be used for additional user-defined or user-required operations, such as data transfer, printing, saving, retrieving, indexing, processing, managing, or the like. Each time the operating system redisplays the field on the display monitor, the program of the present invention monitors the transaction and correlates the value of data to be used.
This functionality is provided regardless of whether such applications may be physically located upon on the computer, or upon remote network client, host, or server computers. This functionality, additionally, is provided regardless of whether such applications may be logically operating upon such remote computers; and, regardless of whether such applications are logically operating upon a platform different from the Windows(copyright) platform.
This universal functionality is provided, in part, because the integrated DIM system functionality is performed at the Windows(copyright) operating system level, rather than at the specific application level; thereby, providing functionality for all applications running under the Windows(copyright) operating system. In a network configuration, since the Auto IFC is completed on the client side, the resources of the host, server, or other remote network computer are spared; thereby, providing better overall performance. Additionally, the integrated DIM system effectively can link together the processing for all applications and data for the entire enterprise.